package com.chrray.position.domain.dto;

import com.chrray.position.enums.app.FdGenderEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Date;

/**
 * 用户个人认证信息 参数层对象
 *
 * @author wusiwee
 * @email wusiwee@163.com
 * @since 1.0.1 2024-08-07
 */
@Data
@ApiModel(description = "用户个人认证信息")
public class FdAuthPersonalDTO {

	@ApiModelProperty(value = "主键")
	private Long id;

	@ApiModelProperty(value = "用户id")
	private Long userId;

	@ApiModelProperty(value = "身份证人像照片")
	@NotNull(message = "身份证人像照片不能为空")
	@NotEmpty(message = "身份证人像照片不能为空")
	private String faceImg;

	@ApiModelProperty(value = "姓名")
	@NotNull(message = "姓名不能为空")
	@NotEmpty(message = "姓名不能为空")
	private String name;

	@ApiModelProperty(value = "身份证号")
	@NotNull(message = "身份证号不能为空")
	@NotEmpty(message = "身份证号不能为空")
	private String idNo;

	@ApiModelProperty(value = "身份证地址")
	@NotNull(message = "身份证地址不能为空")
	@NotEmpty(message = "身份证地址不能为空")
	@Size(max = 255, message = "身份证地址最大长度为255")
	private String addr;

	@ApiModelProperty(value = "出生年份")
	@NotNull(message = "出生年份不能为空")
	private Integer birthYear;

	@ApiModelProperty(value = "性别:1-男,2-女,3-不限")
	@NotNull(message = "性别不能为空")
	private Integer gender;

	@ApiModelProperty(value = "认证时间")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
	private Date createTime;

	private Integer delFlag;


}
